//找到幸运数字
/*在整数数组中，如果一个整数的出现频次和它的数值大小相等，我们就称这个整数为「幸运数」。

给你一个整数数组 arr，请你从中找出并返回一个幸运数。

如果数组中存在多个幸运数，只需返回 最大 的那个。
如果数组中不含幸运数，则返回 -1 。*/
int findLucky(int* arr, int arrSize) {
    int cnt[501] = {0};
    for (int i = 0; i < arrSize; ++ i) ++ cnt[arr[i]];
    for (int i = 500; i; -- i) 
        if (i == cnt[i]) return i;
    return -1;
}
//边界上的蚂蚁
/*边界上有一只蚂蚁，它有时向 左 走，有时向 右 走。

给你一个 非零 整数数组 nums 。蚂蚁会按顺序读取 nums 中的元素，从第一个元素开始直到结束。每一步，蚂蚁会根据当前元素的值移动：

如果 nums[i] < 0 ，向 左 移动 -nums[i]单位。
如果 nums[i] > 0 ，向 右 移动 nums[i]单位。
返回蚂蚁 返回 到边界上的次数。*/
int returnToBoundaryCount(int* nums, int numsSize) {
    int add = 0;
    int sum=0;
    for (int i = 0; i < numsSize; i++) {
        sum+=nums[i];
        if(sum==0)
        add++;
    }
    return add;
}